IBIS Macromodel Task Group

Meeting date: 09 February 2010

Members (asterisk for those attending):
  Adge Hawes, IBM
  Ambrish Varma, Cadence Design Systems
* Anders Ekholm, Ericsson
* Arpad Muranyi, Mentor Graphics Corp.
  Barry Katz, SiSoft
* Bob Ross, Teraspeed Consulting Group
  Brad Brim, Sigrity
  Brad Griffin, Cadence Design Systems
  Chris Herrick, Ansoft
  Chris McGrath, Synopsys
* Danil Kirsanov, Ansoft
  David Banas, Xilinx
  Deepak Ramaswany, Ansoft
  Donald Telian, consultant
  Doug White, Cisco Systems
* Eckhard Lenski, Nokia-Siemens Networks
  Eckhard Miersch, Sigrity
  Essaid Bensoudane, ST Microelectronics
* Fangyi Rao, Agilent
  Ganesh Narayanaswamy, ST Micro
  Gang Kang, Sigrity
  Hemant Shah, Cadence Design Systems
  Ian Dodd, consultant
  Jerry Chuang, Xilinx
  Joe Abler, IBM
  John Angulo, Mentor Graphics
  John Shields, Mentor Graphics
* Ken Willis, Cadence Design Systems
* Kumar Keshavan, Sigrity
  Lance Wang, Cadence Design Systems
  Luis Boluna, Cisco Systems
  Michael Mirmak, Intel Corp.
* Mike LaBonte, Cisco Systems
  Mike Steinberger, SiSoft
  Mustansir Fanaswalla, Xilinx
  Patrick O'Halloran, Tiburon Design Automation
  Paul Fernando, NCSU
  Pavani Jella, TI
  Radek Biernacki, Agilent (EESof)
* Randy Wolff, Micron Technology
  Ray Komow, Cadence Design Systems
  Richard Mellitz, Intel
  Richard Ward, Texas Instruments
  Samuel Mertens, Ansoft
  Sam Chitwood, Sigrity
  Sanjeev Gupta, Agilent
  Shangli Wu, Cadence Design Systems
  Sid Singh, Extreme Networks
  Stephen Scearce, Cisco Systems
  Steve Kaufer, Mentor Graphics
  Steve Pytel, Ansoft
  Syed Huq, Cisco Systems
  Syed Sadeghi, ST Micro
  Ted Mido, Synopsys
  Terry Jernberg, Cadence Design Systems
* Todd Westerhoff, SiSoft
  Vladimir Dmitriev-Zdorov, Mentor Graphics
  Vikas Gupta, Xilinx
  Vuk Borich, Agilent
* Walter Katz, SiSoft
* Zhen Mu, Mentor Graphics

------------------------------------------------------------------------
Opens:

- Arpad: We can change the order of items on the agenda if necessary

--------------------------
Call for patent disclosure:

- No one declared a patent.

-------------
Review of ARs:

- Arpad: Write a clarification BIRD to discuss accuracy issues related to the 
  various AMI clock_tick algorithms in an IBIS-AMI DLL
  - TBD

- Todd: Update the BIRD for IBIS S-parameter box based on feedback from discussion
  - No update

- Arpad:  Write parameter passing syntax proposal (BIRD draft)
          for *-AMS models in IBIS that is consistent with the
          parameter passing syntax of the AMI models
          - TBD

- TBD:    Propose a parameter passing syntax for the SPICE
          - [External ...] also?
          - TBD

- Arpad:  Review the documentation (annotation) in the macro libraries.
          - Deferred until a demand arises or we have nothing else to do

-------------
New Discussion:

Walter showed his Feb 7 summary email of AMI update BIRD changes:
- Jitter should be handled in another BIRD
- A separate BIRD could be written for analog models
- Issues with the BIRD should be handled by email
- Bob: The IBIS committee should not be burdened with resolving issues
  - We have to do a better job than the first time
  - Jitter has been stripped out, but needs to be replaced with something
- Arpad: We have to decide where to handle jitter
- Ken: It would help to have jitter changes in a separate BIRD
- Arpad: It would be best to have jitter changes all in one BIRD
  - These BIRDs will go into the same IBIS release

Walter showed the AMI update BIRD
- Bob: There is not much change from the old text to the new
  - It should go quickly
- Walter: Added impulse response definition
  - Added to tree structure explanation
  - Includes link to Wikipedia
  - Text fields unlimited, can contain linefeeds
- Kumar: The strings might contain the entire tree of a model
- Arpad: This makes newlines different if they are inside vs. outside quotes
  - Is it OK in descriptions?
- Walter: Yes, it's easier than backslash-N in a flat string.
- Mike: We might need the ability to escape quotes in strings
- Bob: EDA tools are free to ignore linefeeds if they wish
- Walter: Vector is changed to array
- Arpad: In some places vector makes more sense
- Walter: NA as used here may not be compatible with other uses
  - For example min=NA and max=NA means use typ values
- Bob: Increment should not have typ
- Walter: The increments are based on it
- Randy: The example passed value=55 is not possible with delta=50

- Walter: For Corner, typ is probably the best Default value
- Bob: Descriptions should not be too large to fit on a screen

- Walter: Fangyi had recommendations for parameter passing
- Kumar: This defies C conventions about string allocation and freeing
  - The AMI model developer is burdened with tracking the memory
- Todd: If something is passed by accident the tool should ignore it

- Walter: Should we require declaring things like GetWave_Exists as Boolean?
- Mike: Should reserved parameters require type definition at all?
- Walter: Some parameters can have different types
- Bob: It should be optional, not banned

- Walter: We should allow exponential notation for Ignore_bits
  - This can be a large integer
- Bob: We never addresses the meaning of integer and float
- Arpad: What if someone specifies 10.5 bits?
- Bob: This can be a problem when passed to a DLL
- Walter: This is covered
- Walter changed the spec to allow 1e5 as an Integer, for example

- Walter: Clock DCD and data DCD are separate
  - The existing BIRD covers clock DCD
  - The jitter BIRD can cover data DCD
- Fangyi: It should be in a separate BIRD

- Walter: Array is allowed at IBM's request
  - They produced non-compliant models but we can accommodate
- Arpad: Can we create a new syntax that makes them compliant?
- Walter: This would do that
  - There is an example of it in the BIRD
- Ken: The value can be a file name, which can have anything
- Todd: Then the software has no ability to provide a user interface
  - Some models do have external data
  - There does need to be a way to tell them where to find it
- Ken: We should already have that now
- Walter: Reading a file for every GetWave call is inefficient
- Todd: We had Table in the original spec, but found flaws in it
  - These are conceptually the same thing
- Walter: There was no ability to change values in Table
- Arpad: So with Array we can set values by index?
- Walter: No but each element can have a different type, like Range
  - This allows a GUI to manipulate it

Arpad: Should this be merged with the other document?
- Walter: 

AR: Walter send AMI update BIRD changes to Arpad for integration
AR: Mike post updated AMI update BIRD draft

Todd: Should we have a meeting next week?
- We have winter break
- Arpad: There will be no meeting next week

Next meeting: 23 Feb 2009 12:00pm PT

--------

IBIS Interconnect SPICE Wish List:

1) Simulator directives
